using System;

namespace GitProjectManager.Models
{
    public class GitProject
    {
        public string Id { get; set; } = Guid.NewGuid().ToString();
        public string Name { get; set; } = string.Empty;
        public string Path { get; set; } = string.Empty;
        public string DefaultIDE { get; set; } = "code";
        // 自定义程序名称，为空则使用DefaultIDE打开
        public string? ProgramName { get; set; }
        public DateTime LastOpened { get; set; } = DateTime.MinValue;
        public int OpenCount { get; set; } = 0;
        public DateTime AddedDate { get; set; } = DateTime.Now;
        public string? Description { get; set; }
        public string[]? Tags { get; set; }
        
        // Git相关信息
        public string? CurrentBranch { get; set; }
        public string? GitStatus { get; set; }
        public DateTime? LastCommitDate { get; set; }
        public bool HasUncommittedChanges { get; set; }
    }
}